package com.lzq.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import java.util.List;

/**
 * 自定义 SQL 注入方法
 *
 * @author pengrx
 */
public interface CacBaseMapper<T> extends BaseMapper<T>, AdapterOldMapper<T> {

    /**
     * 批量插入多条记录
     * @param entityList
     * @return
     */
    int insertBatch(List<T> entityList);

    /**
     * 主键是否已在数据库存在 ？ insert : update<br>
     * 仅 MySQL 数据库生效
     * @param entity
     * @return
     */
    int insertOrUpdateById(T entity);

    /**
     * 批量插入或更新，每条记录均执行，主键是否已在数据库存在 ？insert : update
     * @param entityList
     * @return
     */
    int insertOrUpdateByIdBatch(List<T> entityList);

}
